package cn.smile.business.basic;

import cn.smile.bean.dto.basic.BasicItemDTO;
import cn.smile.bean.entity.basic.ItemToBasic;
import cn.smile.commons.domain.IBaseService;

import java.util.List;
import java.util.Map;

public interface IItemToBasicService extends IBaseService<ItemToBasic> {

    /**
     * 保存关联关系
     *
     * @param itemId    消费单ID
     * @param basicList 基础项目集合
     */
    void saveCorrelation(String itemId, List<String> basicList);

    /**
     * 删除关联关系
     *
     * @param itemId 消费单ID
     */
    void delCorrelation(String itemId);

    /**
     * 根据消费单ID查询基础项目ID集合
     *
     * @param itemIds 消费单ID
     * @return 关联基础项目ID集合
     */
    Map<String, List<BasicItemDTO>> getByItemIds(List<String> itemIds);

    /**
     * 根据基础项目ID查询关联的消费单ID集合
     *
     * @param basicId 基础项目ID
     * @return 消费单ID集合
     */
    @SuppressWarnings("unused")
    List<String> getByBasicId(String basicId);
}
